package cn.bonoon.kernel.web.annotations;

import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

import java.lang.annotation.Retention;
import java.lang.annotation.Target;
/**
 * <pre>
 * 当使用{@link cn.bonoon.kernel.web.annotations.components.AsComboGrid AsComboGrid}时，必须使用本注解返回指定的数据类型，
 * 该数据类型也可直接用于生成{@link cn.bonoon.kernel.web.annotations.components.AsComboGrid AsComboGrid}的下拉列表的表头
 * 
 * 用来指定自动加载的处理结果集的，所以必须在有使用{@link AutoDataLoader}上才有效
 * </pre>
 * @author jackson
 *
 */
@Target(FIELD)
@Retention(RUNTIME)
public @interface AutoDataResultClass {

	/**
	 * <pre>
	 * 返回的实体；通常情况下
	 * <code>combobox<code>返回<code>cn.bonoon.kernel.support.vo.Item</code>
	 * <code>tree<code>返回<code>cn.bonoon.kernel.support.vo.Node</code>
	 * 或者ajax tree
	 * <code>tree<code>返回<code>cn.bonoon.kernel.support.vo.AjaxNode</code>
	 * </pre>
	 * @return
	 */
	Class<?> value();
}
